﻿using _2112A_2_MES._chubowen;
using _2112A_2_MES._sujiahao;
using _2112A_2_MES._wangweihao;
using _2112A_2_MES._XiangHe;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Test.WangWeiHao;
using Volo.Abp.Application.Services;

namespace _2112A_2_MES.XiangHes.WorkStations
{
    public interface IWorkStationService:IApplicationService
    {
        /// <summary>
        /// 工作站列表
        /// </summary>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <param name="workCode"></param>
        /// <param name="wordName"></param>
        /// <param name="carId"></param>
        /// <param name="proceId"></param>
        /// <returns></returns>
        Task<ReturnInfo<List<WorkStationDto>>> GetWorkStation(int pageIndex,int pageSize,string? workCode,string? wordName,int carId,int proceId);

        /// <summary>
        /// 所属车间
        /// </summary>
        /// <returns></returns>
        Task<ReturnSelect<List<MdWorkshop>>> GetWorkShopList();

        /// <summary>
        /// 所属工序
        /// </summary>
        /// <returns></returns>
        Task<ReturnInfo<List<ProProcess>>> GetProcessList();

        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="workstation"></param>
        /// <returns></returns>
        Task<int> AddWork(Workstation workstation);

        /// <summary>
        /// 获取单个
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<Workstation> GetSingleWork(int id);

        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="measure"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<int> UpdateWork(Workstation workstation, int id);

        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<int> DeleteWork(int id);

        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<int> DeleteRangeWork(string id);

    }
}
